#include <bits/stdc++.h>
using namespace std;

class MyQueue{
public:
	deque<int> que;// 使用deque来实现单调队列
	void pop(int value){
		if(!que.empty() && value == que.front()){
			que.pop_front();
		}
	}
	void push(int value){
		while(!que.empty() && value > que.front() ){
			que.pop_front();
		}
		que.push_back(value);
	}
	int front(){
		return que.front();
	}
};

vector<int> maxSlidingWindow(vector<int>& nums, int k){
	MyQueue que;
	vector<int> result;
	// 先把前k个放进去
	for(int i = 0;i < k;i++){
		que.push(nums[i]);
	}
	result.push_back(que.front());
	for(int i = k;i < nums.size();i++){
		que.pop(nums[i-k]);
		que.push(nums[i]);
		result.push_back(que.front());
	}
	return result;
	
}

int main(){
	
	
	return 0;
}
